# Copyright 2023 Iguazio
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import mlrun


def setup(project: mlrun.projects.MlrunProject):
    """Example for project setup script which modify project metadata and functions"""
    project.spec.params["test123"] = "456"
    prep_func = project.set_function(
        "prep_data.py", "prep-data", kind="job", image="mlrun/mlrun"
    )
    prep_func.set_label("tst1", project.get_param("p2"))

    srv_func = project.set_function(
        "serving.py", "serving", kind="serving", image="mlrun/mlrun"
    )
    srv_func.add_model("x", ".", class_name="MyCls")
    return project
